<?php


class Auth {
	private $url_model;
	private $url_method;
	private $url_param;
	private $CI;
	
	function __construct()
	{
		$this->CI =new CI_Controller();
		$this->CI->load->library('session');
		$url=$_SERVER['PHP_SELF'];
		$arr=explode('/', $url); //得到分割后的数组
		$arr=array_slice($arr,array_search('index.php', $arr)+1,count($arr));//对数组进行搜索，找到index.php后面的数组
		$this->url_model=empty($arr[0])?' ':$arr[0];//如果控制器没有 就设置为空 
		$this->url_method=empty($arr[1])?'index':$arr[1];//如果没有方法 则为index方法 
		$this->url_param=empty($arr[2])?'':$arr[2];//如果没定义 则表示没有参数 
		
	}
	
	
	function filter()
	{
		$arr = $this->CI->config->load('auth',true);
		$this->CI->load->helper('url');
		$permission =$this->CI->session->userdata('permission');
		if($this->url_model!=' '&&$this->url_model!='login')//如果model不为空，那么就是访问的不是主页面
		{
			if(!empty($permission))
			{
				switch($permission)
				{
					case 1:$this->admin($arr);
						break;
					case 2:$this->user($arr);
						break;
				}
			}
			else
			{
				echo '你没有权限访问该页面';
				exit(0);
			}
		}
	}
	
	function admin($arr)
	{
		if(!in_array($this->url_model, $arr))
		{
			redirect('login/login');
		}
	}
	
	
	function user($arr)
	{
		if(!in_array($this->url_model,$arr))
		{
			redirect('login/login');
		}
	}
	
}

?>